home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Makefiles / app / subproj.make < prev    next >
Text File  |  1994-02-23  |  3KB  |  66 lines

  1. #
  2. #                                 subproj.make
  3. #
  4. # Inputs from Makefile.preamble (no defaults):
  5. #    OTHER_CFLAGS - Flags passed to compiler (in addition to -g, -O, etc.)
  6. #    OTHER_OFILES - Additional relocatables that may be linked in
  7. #    OTHER_PRODUCT_DEPENDS - Other dependencies of this project
  8. #    OTHER_SOURCEFILES - Other source files maintained by .pre/postamble
  9. #    OTHER_GARBAGE - Additional files to be removed by make 'clean' 
  10. #
  11. #    MSGFILES - .msg files that should have msgwrap run on them
  12. #    DEFSFILES - .defs files that should have mig run on them
  13. #    MIGFILES - .mig files (no .defs files) that should have mig run on them
  14. #
  15. #    PRECOMPS - Precompiled headers that should be built before compilation 
  16. #    OTHER_INITIAL_TARGETS - Targets to be built before subprojects, etc.
  17. #
  18. # Inputs from Makefile.postamble (with defaults set in common.make):
  19. #    MAKEFILES - Makefiles this project depends on (default = Makefile)
  20. #
  21. # Inputs from Makefile (avoid setting these, ProjectBuilder controls them):
  22. #    NAME - name of application
  23. #    LANGUAGE - langage in which the project is written (default "English")
  24. #    LOCAL_RESOURCES - localized resources (e.g. nib's, images) of project
  25. #    GLOBAL_RESOURCES - non-localized resources of project
  26. #
  27. #    CLASSES - Class implementation files in project.
  28. #    HFILES - Header files in project.
  29. #    MFILES - Other Objective-C source files in project. 
  30. #    CFILES - Other C source files in project. 
  31. #    PSWFILES - .psw files in the project
  32. #    PSWMFILES - .pswm files in the project
  33. #    SUBPROJECTS - Subprojects of this project
  34. #    BUNDLES - Bundle subprojects of this project
  35. #    OTHERSRCS - Other miscellaneous sources of this project
  36. #    OTHERLINKED - Source files not matching a standard source extention
  37. #    OTHERLINKEDOFILES - Other relocatable files to (always) link in
  38. #    APP_MAKEFILE_DIR - Directory in which to find generic set of Makefiles
  39. #    MAKEFILEDIR - Directory in which to find $(MAKEFILE)
  40. #    MAKEFILE - Top level mechanism Makefile (e.g., app.make, bundle.make)
  41. #
  42.  
  43. APP_MAKEFILE_DIR = /NextDeveloper/Makefiles/app
  44. include $(APP_MAKEFILE_DIR)/common.make
  45.  
  46. PRODUCT = $(PRODUCT_PREFIX:.subproj=_subproj.o
  47.  
  48. project:: $(INITIAL_TARGETS) subprojs bundles resources $(PRODUCT)
  49.  
  50. TEMP_C_FILE = $(PRODUCT:.o=)_empty.c
  51.  
  52. $(PRODUCT): $(PRODUCT_DEPENDS) 
  53.     @(if [ "`$(ECHO) $(OFILES) | wc -w`" != "       0" ] ; then \
  54.        $(ECHO) $(CC) $(ALL_CFLAGS) -nostdlib $(OFILES) $(OTHER_OFILES) -r -o $(PRODUCT) ; \
  55.        $(CC) $(ALL_CFLAGS) -nostdlib $(OFILES) $(OTHER_OFILES) -r -o $(PRODUCT) ; \
  56.     else \
  57.        $(ECHO) Warning: Building empty subproject... ; \
  58.        $(RM) -f $(TEMP_C_FILE) ; \
  59.        $(TOUCH) $(TEMP_C_FILE) ; \
  60.        $(CC) $(ALL_CFLAGS) -c $(TEMP_C_FILE) -o $(PRODUCT) ; \
  61.        $(RM) -f $(TEMP_C_FILE) ; \
  62.     fi)
  63.  
  64. depend:: Makefile.dependencies $(SUBPROJECTS:.subproj=.depend) $(BUNDLES:.bproj=.depend)
  65.  
  66.